#ifndef _LOADING_SCENE_H_
#define _LOADING_SCENE_H_
#include "cocos2d.h"
#include "AppDelegate.h"

using namespace cocos2d;

namespace fireplane
{
	typedef bool (*do_load_logic)(void);

	class LoadingScene : public cocos2d::CCLayer
	{
	public:
		// Here's a difference. Method 'init' in cocos2d-x returns bool, instead of returning 'id' in cocos2d-iphone
		virtual bool init();  

		void update(float dt);

		// there's no 'id' in cpp, so we recommand to return the exactly class pointer
		static cocos2d::CCScene* scene();
		// implement the "static node()" method manually
		LAYER_NODE_FUNC(LoadingScene);

		static void registerLoadFunction(do_load_logic call);

	private:
		static do_load_logic _call;
	};
}

#endif